Printing system utilizing cartridge pre-stored with identifiers with identifying printed pages

ABSTRACT

A printer system for printing pages belonging to an interactive page system includes a cartridge comprising a data storage area in which is pre-stored a range of identifiers, each identifier being unique throughout the interactive page system; and a printer comprising an interface for receiving the cartridge, a reader for reading an identifier from the range of pre-stored identifiers, a coded data generator for generating a page identifier from the identifier, and a printing mechanism for printing the page identifier onto a page. The reader reads a previously unread identifier from the range of identifiers each time the coded data generator is to generate a page identifier.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application is a Continuation of Ser. No. 10/965,933 whichis a Continuation-in-Part of Ser. No. 09/608,920 filed Jun. 30, 2000,now issued U.S. Pat. No. 6,831,682.

TECHNICAL FIELD

The present invention relates to cartridges containing identifiers, andin particular to printer consumable cartridges containing identifierswhich may be applied to printed media.

CROSS REFERENCED APPLICATIONS

Various methods, systems and apparatus relating to the present inventionare disclosed in the following granted US patents and co-pending USapplications filed by the applicant or assignee of the presentapplication: The disclosures of all of these granted US patents andco-pending US applications are incorporated herein by reference.

6,374,354 10/815,621 7,243,835 10/815,630 10/815,637 10/815,6387,251,050 10/815,642 7,097,094 7,137,549 10/815,618 7,156,292 10/815,63510/815,647 10/815,634 7,137,566 7,131,596 7,128,265 7,197,374 7,175,08910/815,617 10/815,620 7,178,719 10/815,613 7,207,483 7,296,737 7,270,26610/815,614 10/815,636 7,128,270 10/815,609 7,150,398 7,159,77710/815,610 7,188,769 7,097,106 7,070,110 7,243,849 6,416,167 7,204,9417,282,164 10/815,628 6,746,105 10/728,784 10/728,783 7,156,289 7,178,7187,225,979 09/575,197 7,079,712 6,825,945 7,330,974 6,813,039 7,190,4746,987,506 6,824,044 7,038,797 6,980,318 6,816,274 7,102,772 09/575,1866,681,045 6,678,499 6,679,420 6,963,845 6,976,220 6,728,000 7,110,1267,173,722 6,976,035 6,813,558 6,766,942 6,965,454 6,995,859 7,088,4596,720,985 7,286,113 6,922,779 6,978,019 6,847,883 7,131,058 7,295,83909/607,843 09/693,690 6,959,298 6,973,450 7,150,404 6,965,882 7,233,92409/575,181 09/722,174 7,175,079 7,162,259 6,718,061 10/291,52310/291,471 7,012,710 6,825,956 10/291,481 7,222,098 10/291,825 7,263,5087,031,010 6,972,864 6,862,105 7,009,738 6,989,911 6,982,807 10/291,5766,829,387 6,714,678 6,644,545 6,609,653 6,651,879 10/291,555 7,293,24010/291,592 10/291,542 7,044,363 7,004,390 6,867,880 7,034,953 6,987,5817,216,224 10/291,821 7,162,269 7,162,222 7,290,210 7,293,233 7,293,2346,850,931 6,865,570 6,847,961 10/685,523 10/685,583 7,162,442 10/685,5847,159,784 10/804,034 10/793,933 6,889,896 10/831,232 7,174,056 7,068,3827,007,851 6,957,921 6,457,883 10/743,671 7,094,910 7,091,344 7,122,6857,038,066 7,099,019 7,062,651 6,789,194 6,789,191 10/900,129 7,278,01810/913,350 6,644,642 6,502,614 6,622,999 6,669,385 6,827,116 6,549,9356,987,573 6,727,996 6,591,884 6,439,706 6,760,119 7,295,332 7,064,8516,826,547 6,290,349 6,428,155 6,785,016 6,831,682 6,741,871 6,927,8716,980,306 6,965,439 6,840,606 7,036,918 6,977,746 6,970,264 7,068,3897,093,991 7,190,491 10/932,044 6,982,798 6,870,966 6,822,639 6,474,8886,627,870 6,724,374 6,788,982 7,263,270 6,788,293 6,946,672 6,737,5917,091,960 09/693,514 6,792,165 7,105,753 6,980,704 6,768,821 7,132,6127,041,916 6,797,895 7,015,901 7,289,882 7,148,644 10/778,056 10/778,05810/778,060 10/778,059 10/778,063 10/778,062 10/778,061 10/778,0577,096,199 7,286,887 10/917,467 7,324,859 7,218,978 10/917,436 10/919,3797,055,739 7,233,320 6,830,196 6,832,717 7,182,247 7,120,853 7,082,5626,843,420 10/291,718 6,789,731 7,057,608 6,766,944 6,766,945 7,289,10310/291,559 7,299,969 10/409,864 7,108,192 7,111,791 7,077,333 6,983,87810/786,631 7,134,598 10/893,372 6,929,186 6,994,264 7,017,826 7,014,1237,308,148 10/683,151 10/683,040 10/778,090 6,957,768 09/575,1727,170,499 7,106,888 7,123,239 6,982,701 6,982,703 7,227,527 6,786,3976,947,027 6,975,299 7,139,431 7,048,178 7,118,025 6,839,053 7,015,9007,010,147 7,133,557 6,914,593 10/291,546 6,938,826 7,278,566 6,593,1667,132,679 6,940,088 6,795,215 7,154,638 6,859,289 6,977,751 6,398,3326,394,573 6,622,923 6,747,760 6,921,144 10/884,881 10/854,514 6,454,4826,808,330 6,527,365 6,474,773 6,550,997 7,093,923 6,957,923 7,131,7246,536,874 6,666,544

BACKGROUND

A number of systems have been proposed in which a printed medium isimbued with an ability to support user interactions with a computersystem. Such systems typically rely on coded data placed on or in themedium, ideally in inconspicuous or invisible form. The interactions arethen typically mediated by a device capable of sensing and decoding thecoded data and communicating the interactions to the computer system.The coded data can consist of one or more discrete barcodes, with eachbarcode identifying a hyperlink to related information. For example, thebarcode can be a UPC barcode as described in U.S. Pat. No. 5,978,773“System and method for using an ordinary article of commerce to access aremote computer” (F. C. Hudetz et al); it can also consist of a codedcoordinate grid which allows the sensing device to generate positioninformation relative to the medium, as variously described in U.S. Pat.No. 5,051,736“Optical stylus and passive digitizing tablet data inputsystem” (W. E. Bennett et al), U.S. Pat. No. 5,477,012 “Optical positiondetermination” (O. F. Sekendur), U.S. Pat. No. 6,330,976 “Marking mediumarea with encoded identifier for producing action through network” (M.Dymetman et al), and U.S. Pat. No. 6,502,756 “Recording of information”(C. Faahraeus), as well as in the present applicant's granted andco-pending applications listed above.

As described in the present applicant's U.S. Pat. No. 6,457,883, it isadvantageous to include unique identifiers in the coded data, since thisallows user interactions with different instances of the printed mediumto be distinguished. This is true whether the coded data directlyidentifies one or more hyperlinks (or functions), or whether the codeddata identifies one or more regions of the medium (or the entiremedium). When the coded data includes a coordinate grid, it may includeone or more separate identifiers to identify one or more regions of themedium to which the coordinate grid applies, or the coordinate grid maybe a fragment of a larger coordinate grid, thus implicitly identifyingone or more regions of the medium, e.g. as described in U.S. Pat. No.6,502,756.

When the coded data is printed onto the medium on demand, there existsthe problem of allocating one or more unique identifiers to be includedin the coded data. This is particularly a problem when the identifiersare required to be globally unique but the printer does not have onlineaccess to a source of globally unique identifiers.

SUMMARY

According to an aspect of the present disclosure, a printer system forprinting pages belonging to an interactive page system comprises acartridge comprising a data storage area in which is pre-stored a rangeof identifiers, each identifier being unique throughout the interactivepage system; and a printer comprising an interface for receiving thecartridge, a reader for reading an identifier from the range ofpre-stored identifiers, a coded data generator for generating a pageidentifier from the identifier, and a printing mechanism for printingthe page identifier onto a page. The reader reads a previously unreadidentifier from the range of identifiers each time the coded datagenerator is to generate a page identifier.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a perspective view of a wall-mounted printer;

FIG. 2 shows a section through the length of the printer of FIG. 1;

FIG. 2A shows an enlarged portion of FIG. 2 showing a section of theduplexed print engines and glue wheel assembly;

FIG. 3 shows a detailed view of the ink cartridge, ink, air and gluepaths, and print engines of the printer of FIGS. 1 and 2;

FIG. 4 shows a schematic block diagram of a printer controller for theprinter shown in FIGS. 1 and 2;

FIG. 5 shows a schematic block diagram of duplexed print enginecontrollers and printheads associated with the printer controller shownin FIG. 4;

FIG. 6 shows a schematic block diagram of a printer with ID data storedin the ink cartridge;

FIG. 7 shows a schematic block diagram of a printer with ID data encodedon the surface of the ink cartridge;

FIG. 8 shows a flowchart of a printer allocating the next ID from theink cartridge, on receipt of print data;

FIG. 9 shows a flowchart of a computer requesting the ID from theprinter prior to sending print data;

FIG. 10 shows a flowchart of a printer reading ID data from the inkcartridge and maintaining the ID allocation internally;

FIG. 11 shows a flowchart of a computer maintaining ID allocation afterobtaining the ID data from the printer;

FIG. 12 shows a flowchart of a computer maintaining ID allocation afterobtaining the ID data from the printer; ands

FIG. 13 shows a class diagram of an object ID.

DETAILED DESCRIPTION

(Note: Memjet™ is the Trademark of Silverbrook Research Pty Ltd,Australia.)

In the preferred embodiment, the invention is configured to work withthe netpage system, as described in the present applicant's granted andco-pending applications listed above.

A netpage printer 601, an example of which is described in more detailbelow, prints interactive pages 2014 with visible graphic data andinvisible coded data. The coded data for a region of a surface (e.g. thesurface of a printed page) includes one or more identifiers 210 for eachregion and a coordinate grid for each region. A coordinate grid may be afragment of a larger coordinate grid, and may thus implicitly identifyits corresponding region (or page), i.e. without an explicit region (orpage) identifier. A description of the contents of the page 2010,corresponding to at least some of the graphic data, is stored on acomputer system, indexed by the corresponding region identifiers (or thepage identifier).

A user typically interacts with the page using a hand-held device, suchas a pen device, which is capable of sensing and decoding the codeddata, and transmitting, to the computer system, data representingmovement of the device relative to the coordinate grid. The computersystem interprets the movement data in relation to the storeddescription of the page, retrieved using the region (or page) identifieraccompanying the movement data. For example, the computer system mayinterpret the movement data as a click of a button, a check of a box,handwriting in a text field, drawing in a drawing field, or a signaturein a signature field. Alternatively or additionally, the coded data mayidentify interactive objects, such as buttons, hyperlinks and fields,directly, allowing the computer system to interpret the movement datawithout reference to a stored page description.

As shown in FIG. 13, the identifier 210 can be considered as a generalobject identifier, whether it identifies a page, a region of a page, aspecific object, or a specific item. In the latter case, the itemidentifier 215 may correspond to an electronic product code (EPC),consisting of a product identifier 214 and a serial number 213. Theproduct identifier may correspond to a Universal Product Code (UPC). Theproduct identifier may consist of a manufacturer number 211 and aproduct class number 212.

A netpage printer 601 comprises a controller 656, a printhead 350, andone or more replaceable ink cartridges 2003. A netpage printer 601utilizes one or more print cartridges 2003 which may contain black ink,colored ink (e.g. cyan, magenta, yellow), fixative, and adhesive 2005.Each cartridge 2003 typically incorporates a quality assurance (QA) chip761 which contains information about ink characteristics and availableink volume, and which is used to record ink consumption during printingto prevent printheads 350 from running dry and being damaged.

The netpage printer 601 typically utilizes invisible ink for printingcoded data, in which case at least one cartridge 2003 includes invisibleink. The invisible ink may be a near-infrared-absorptive ink.

It is advantageous for a netpage system to use unique identifiers foridentifying regions (or pages), to allow user interactions withdifferent regions (or pages) to be distinguished by the system. This mayapply to regions (or pages) with different descriptions, or to differentinstances of the same regions (or pages), or to different object (orfunction) identifiers, or to different instances of the same object (orfunction) identifiers.

When all the participants of a netpage system are connected, it is atrivial matter to allocate identifiers in such a way as to guaranteeglobal uniqueness. For example, a central database of identifiers may beused. However, when all the participants of a netpage system are notconnected, the allocation of unique identifiers presents a problem. Forexample, when netpage systems are deployed on multiple networks, it isdesirable for identifiers allocated within any network to be uniqueacross all networks to prevent accidental misinterpretation by acomputer on one network of input received via a page printed on anothernetwork.

As shown in FIG. 6, to allow allocation of globally unique identifiers,identifiers can be centrally allocated and stored in netpage cartridges2003 during or after the cartridge manufacturing process. The QA chip761 in a netpage printer cartridge 2003 provides a convenientnon-volatile memory (in the form of a flash memory) capable of holding arange of unique identifiers (examples of the QA chip are the subject ofgranted U.S. Pat. Nos. 6,374,354 and 7,631,190, entitled “Use of variantbase keys with two entities”). Ideally, the cartridge 2003 whichcontains the machine-readable ink 2005 used for printing coded data alsoholds the identifier range. This allows the size of the pre-allocatedidentifier range (or set) to be tuned to the maximum number of pagesprintable using the available volume of machine-readable ink. Anothernon-volatile memory in the cartridge can be used in place of the QAchip's memory.

As an alternative, a pre-allocated identifier range (or set) can beprovided to the printer separately from other consumables, e.g. in theform of a flash memory card, read-only memory (ROM) card, optical card,magnetic stripe card, smart card, or any combination of these. Such acard may of course come in any number of form factors, including a chip,a card, and cartridge. It is then practical to have a computer system2009 on the network 2012, rather than a printer, manage identifierallocation from the card.

It will be appreciated that the term “cartridge” is meant to encompassall conceivable form factors, and is not intended in a limiting senseexcept as to indicate an object which can be inserted into a computersystem 2009 or printer 601 for the purposes of being read (and possiblywritten), possibly but not necessarily in conjunction with theextraction of other consumable materials.

As shown in FIG. 8, each time the netpage printer 601 requires a uniqueidentifier, e.g. when it prints a page in response to print datareceived from a computer system, it reads the next available identifierfrom the cartridge 2003, and increments the next available identifier.This ensures that the same identifier is only used once. In practice,this is advantageously done by way of decrementing a count of availableidentifiers relative to a static base identifier. In the preferredembodiment, the printer 601 then communicates the identifier to thecomputer system 2009 to allow the computer system to record anassociation between the page description 2010 and the identifier in anindex 2011. If region (or page) identification is implicit via a uniquefragment of a larger coordinate grid, then the allocated (andcommunicated) “identifier” consists of a range of two-dimensionaladdresses, where the range identifies the coordinate grid fragment andthus the region (or page).

A number of schemes may be used to represent a collection ofidentifiers. A range may be represented by a base identifier and acount. The count may be omitted and the range may instead be limited bythe physical ink capacity of the cartridge. A range or set ofidentifiers may be represented explicitly.

The identifiers may also be generated algorithmically. For example,successive identifiers may be generated recursively, by feeding back atleast a portion of a current identifier into an algorithm to generatethe next identifier.

One way of implementing recursive generation is by using a linearfeedback shift register (LFSR). An LFSR of length k consists of k 1-bitstages numbered 0 to k−1. On each clock the content of stage 0 forms thenext bit of the output sequence, the content of stage i is moved tostage i−1, and the new content of stage is a feedback bit calculated byadding together modulo 2 the previous contents of a fixed subset of thestages of the register (see Menezes, A. J., P. C. van Oorschot and S. A.Vanstone, Handbook of Applied Cryptography, 1997, CRC Press).

A maximal-length LFSR produces as output a so-called m-sequence with alength of (2^k)−1, in which every possible non-zero register valueappears once before the sequence repeats. M-sequences are also known aspseudo-noise (PN) or pseudo-random sequences, since they exhibit many ofthe general characteristics of noise without actually being random. Thecharacteristics and construction of PN sequences are discussedextensively in Golomb, S. W., Shift Register Sequences, Aegean ParkPress, 1982. In practice, a collection of identifiers can be representedby a base identifier and optionally a count. The base identifier thenforms the initial contents of the LFSR.

A number of schemes may also be used to record the consumption ofidentifiers. The base identifier may simply be incremented, decrementedor re-written. The associated count, if present, may be decremented.Alternatively a usage count may be incremented. If the identifierinformation is recorded in a read-only medium, then a separate usagecount is useful. Usage consumption may also be physically recorded, e.g.by the length of a line or of a collection of marks incrementallyrecorded on the cartridge.

The allocation of an identifier from the cartridge 2003 may, from theprinter's point of view, be decoupled from printing. The printer 601may, for example, respond to a request from a computer system 2009 forone or more identifiers, which the computer system then allocates to oneor more regions (or pages) 2010 prior to sending print data to theprinter, as shown in FIG. 9. The print data may then include theidentifiers. Identifiers allocated from a cartridge 2003 may includeidentifiers which are used by the computer system 2009 to indexdocument, page, region and object data, but which are never included incoded data printed by the (or any other) printer.

The netpage print cartridge 2003 may provide identifiers 2015 in anothermachine-readable form, such as in the form of an optical or magneticencoding which can be sensed and decoded by the printer. For example,the identifier data 2015 may be coded in a linear or two-dimensionalbarcode 2007 on the surface of the cartridge, which is read by a barcodereader 2008 embedded in the printer 601, as shown in FIG. 7. If thecartridge lacks re-writable memory entirely (e.g. in the absence ofQA-chip flash memory), then the printer 601 can maintain identifierconsumption data in its own memory 2006, or on its own disk 2013, asshown in FIG. 10, or on a computer system 2009 to which it has access,or a computer system can maintain identifier consumption data 2013 for acartridge 2003 to which the printer 601 provides it with access, asshown in FIG. 11. Although largely practical, these approaches have thedisadvantage that if a partially-used cartridge is moved from onenetpage network to another (or even from one printer to another on thesame network), then duplicate identifier usage may result.Alternatively, the printer 601 can maintain identifier consumption dataon the cartridge, but recorded in a different manner to the identifierdata itself. For example, the identifier data may be recorded inread-only form using any of the approaches described above, and theprinter may read and write (or re-write) identifier consumption dataseparately, e.g. via a optical reader for reading consumption-indicativemarks or data on the cartridge and a printer (or other marking device)for printing (or otherwise placing) consumption-indicating marks or dataonto the cartridge, or via a magnetic reader and writer for readingconsumption-indicating data from and writing consumption-indicating datato a magnetic medium on the cartridge.

However the identifiers are stored in or on the cartridge, it ispreferred that some form of encryption be used. Encryption preventsunauthorized tampering with the information stored on the cartridge,which is important if it is desirable to keep the identifiers globallyunique across many printers and computer systems. Where the identifiershave commercial value, encryption impedes unauthorized generation ofunpaid-for identifiers by end users.

A suitable encryption scheme is a public-private key arrangement,whereby the identifier information on or in the cartridge is encryptedat some point during manufacture or distribution using a private key.The printer (or computer system) is provided with the public keycorresponding to the private key, enabling it to decrypt the identifierinformation from the cartridge prior to use. Alternatively, theidentifier information may be encrypted using a secret key also known tothe printer.

Rather than being encrypted, the identifier information may be stored inthe clear but may have an associated digital signature. The printer canverify the digital signature with respect to the identifiers to therebyauthenticate the identifier information. The digital signature may havebeen generated during manufacture or distribution using a secret key ora private key, and the printer may verify the digital signature usingrespectively the same secret key or a public key associated with theprivate key.

Whether the identifier information is encrypted or digitally signedusing a secret key, the secret key may be securely stored in a master QAchip embedded in the printer.

An example of a netpage printer 601 is described in more detail below.

Printer Mechanics

The vertically-mounted netpage wallprinter 601 is shown fully assembledin FIG. 1. It prints netpages on Letter/A4 sized media using duplexed8½″ Memjet™ print engines 602 and 603, as shown in FIGS. 2 and 2 a. Ituses a straight paper path with the paper 604 passing through theduplexed print engines 602 and 603 which print both sides of a sheetsimultaneously, in full color and with full bleed.

An integral binding assembly 605 applies a strip of glue along one edgeof each printed sheet, allowing it to adhere to the previous sheet whenpressed against it. This creates a final bound document 618 which canrange in thickness from one sheet to several hundred sheets.

The replaceable ink cartridge 627, shown in FIG. 3 coupled with theduplexed print engines, has bladders or chambers for storing fixative,adhesive, and cyan, magenta, yellow, black and infrared inks. Thecartridge also contains a micro air filter in a base molding.

Referring to FIG. 2, the motorized media pick-up roller assembly 626pushes the top sheet directly from the media tray past a paper sensor onthe first print engine 602 into the duplexed Memjet™ printhead assembly.The two Memjet™ print engines 602 and 603 are mounted in an opposingin-line sequential configuration along the straight paper path. Thepaper 604 is drawn into the first print engine 602 by integral, poweredpick-up rollers 626. The position and size of the paper 604 is sensedand full bleed printing commences. Fixative is printed simultaneously toaid drying in the shortest possible time.

The paper exits the first Memjet™ print engine 602 through a set ofpowered exit spike wheels (aligned along the straight paper path), whichact against a rubberized roller. These spike wheels contact the printedsurface and continue to feed the sheet 604 into the second Memjet™ printengine 603.

Referring to FIGS. 2 and 2 a, the paper 604 passes from the duplexedprint engines 602 and 603 into the binder assembly 605. The printed pagepasses between a powered spike wheel axle 670 with a fibrous supportroller and another movable axle with spike wheels and a momentary actionglue wheel. The movable axle/glue assembly 673 is mounted to a metalsupport bracket and it is transported forward to interface with thepowered axle 670 via gears by action of a camshaft. A separate motorpowers this camshaft.

The glue wheel assembly 673 consists of a partially hollow axle 679 witha rotating coupling for the glue supply hose 641 from the ink cartridge627. This axle 679 connects to a glue wheel, which absorbs adhesive bycapillary action through radial holes. A molded housing 682 surroundsthe glue wheel, with an opening at the front. Pivoting side moldings andsprung outer doors are attached to the metal bracket and hinge outsideways when the rest of the assembly 673 is thrust forward. Thisaction exposes the glue wheel through the front of the molded housing682. Tension springs close the assembly and effectively cap the gluewheel during periods of inactivity.

As the sheet 604 passes into the glue wheel assembly 673, adhesive isapplied to one vertical edge on the front side (apart from the firstsheet of a document) as it is transported down into the binding assembly605.

Printer Controller Architecture

The netpage printer controller consists of a controlling processor 750,a factory-installed or field-installed network interface module 625, aradio transceiver (transceiver controller 753, baseband circuit 754, RFcircuit 755, and RF resonators and inductors 756), dual raster imageprocessor (RIP) DSPs 757, duplexed print engine controllers 760 a and760 b, flash memory 658, and 64 MB of DRAM 657, as illustrated in FIG.4.

The controlling processor handles communication with the network 19 andwith local wireless netpage pens 101, senses the help button 617,controls the user interface LEDs 613-616, and feeds and synchronizes theRIP DSPs 757 and print engine controllers 760. It consists of amedium-performance general-purpose microprocessor. The controllingprocessor 750 communicates with the print engine controllers 760 via ahigh-speed serial bus 659.

The RIP DSPs rasterize and compress page descriptions to the netpageprinter's compressed page format. Each print engine controller expands,dithers and prints page images to its associated Memjet™ printhead 350in real time (i.e. at over 30 pages per minute). The duplexed printengine controllers print both sides of a sheet simultaneously.

The master print engine controller 760 a controls the paper transportand monitors ink usage in conjunction with the master QA chip 665 andthe ink cartridge QA chip 761, as shown in FIG. 5.

The printer controller's flash memory 658 holds the software for boththe processor 750 and the DSPs 757, as well as configuration data. Thisis copied to main memory 657 at boot time.

The processor 750, DSPs 757, and digital transceiver components(transceiver controller 753 and baseband circuit 754) are integrated ina single controller ASIC 656. Analog RF components (RF circuit 755 andRF resonators and inductors 756) are provided in a separate RF chip 762.The network interface module 625 is separate, since netpage printersallow the network connection to be factory-selected or field-selected.Flash memory 658 and the 2×256 Mbit (64 MB) DRAM 657 is also off-chip.The print engine controllers 760 are provided in separate ASICs.

A variety of network interface modules 625 are provided, each providinga netpage network interface 751 and optionally a local computer ornetwork interface 752. Netpage network Internet interfaces include POTSmodems, Hybrid Fiber-Coax (HFC) cable modems, ISDN modems, DSL modems,satellite transceivers, current and next-generation cellular telephonetransceivers, and wireless local loop (WLL) transceivers. Localinterfaces include IEEE 1284 (parallel port), 10Base-T and 100Base-TEthernet, USB and USB 2.0, IEEE 1394 (Firewire), and various emerginghome networking interfaces. If an Internet connection is available onthe local network, then the local network interface can be used as thenetpage network interface.

The radio transceiver 753 communicates in the unlicensed 900 MHz bandnormally used by cordless telephones, or alternatively in the unlicensed2.4 GHz industrial, scientific and medical (ISM) band, and usesfrequency hopping and collision detection to provide interference-freecommunication.

The printer controller optionally incorporates an Infrared DataAssociation (IrDA) interface for receiving data “squirted” from devicessuch as netpage cameras. In an alternative embodiment, the printer usesthe IrDA interface for short-range communication with suitablyconfigured netpage pens.

Rasterization and Printing

Once the main processor 750 has received and verified the document'spage layouts and page objects, it runs the appropriate RIP software onthe DSPs 757.

The DSPs 757 rasterize each page description and compress the rasterizedpage image. The main processor stores each compressed page image inmemory. The simplest way to load-balance multiple DSPs is to let eachDSP rasterize a separate page. The DSPs can always be kept busy since anarbitrary number of rasterized pages can, in general, be stored inmemory. This strategy only leads to potentially poor DSP utilizationwhen rasterizing short documents.

The infrared (IR) layer of the printed page contains coded netpage tagsat a density of about six per inch. Each tag encodes the page ID, tagID, and control bits, and the data content of each tag is generatedduring rasterization and stored in the compressed page image.

The main processor 750 passes back-to-back page images to the duplexedprint engine controllers 760. Each print engine controller 760 storesthe compressed page image in its local memory, and starts the pageexpansion and printing pipeline. Page expansion and printing ispipelined because it is impractical to store an entire 114 MB bi-levelCMYK+IR page image in memory.

Print Engine Controller

The page expansion and printing pipeline of the print engine controller760 consists of a high speed IEEE 1394 serial interface 659, a standardJPEG decoder 763, a standard Group 4 Fax decoder 764, a customhalftoner/compositor unit 765, a custom tag encoder 766, a lineloader/formatter unit 767, and a custom interface 768 to the Memjet™printhead 350.

The print engine controller 360 operates in a double buffered manner.While one page is loaded into DRAM 769 via the high speed serialinterface 659, the previously loaded page is read from DRAM 769 andpassed through the print engine controller pipeline. Once the page hasfinished printing, the page just loaded is printed while another page isloaded.

The first stage of the pipeline expands (at 763) the JPEG-compressedcontone CMYK layer, expands (at 764) the Group 4 Fax-compressed bi-levelblack layer, and renders (at 766) the bi-level netpage tag layeraccording to the tag format defined in section 1.2, all in parallel. Thesecond stage dithers (at 765) the contone CMYK layer and composites (at765) the bi-level black layer over the resulting bi-level CMYK layer.The resultant bi-level CMYK-FIR dot data is buffered and formatted (at767) for printing on the Memjet™ printhead 350 via a set of linebuffers. Most of these line buffers are stored in the off-chip DRAM. Thefinal stage prints the six channels of bi-level dot data (includingfixative) to the Memjet™ printhead 350 via the printhead interface 768.

When several print engine controllers 760 are used in unison, such as ina duplexed configuration, they are synchronized via a shared line syncsignal 770. Only one print engine 760, selected via the externalmaster/slave pin 771, generates the line sync signal 770 onto the sharedline.

The print engine controller 760 contains a low-speed processor 772 forsynchronizing the page expansion and rendering pipeline, configuring theprinthead 350 via a low-speed serial bus 773, and controlling thestepper motors 675, 676.

In the 8½″ versions of the netpage printer, the two print engines eachprints 30 Letter pages per minute along the long dimension of the page(11″), giving a line rate of 8.8 kHz at 1600 dpi. In the 12″ versions ofthe netpage printer, the two print engines each prints 45 Letter pagesper minute along the short dimension of the page (8½″), giving a linerate of 10.2 kHz. These line rates are well within the operatingfrequency of the Memjet™ printhead, which in the current design exceeds30 kHz.

Printing Product Labels and Packaging

The printer 601, or a variant thereof, may be used to print productcodes, product information and product graphics onto the label,packaging or actual surface of a product before, during or after itsmanufacture and/or assembly.

The printer may be an add-on infrared printer which prints barcodesand/or netpage tags after text and graphics have been printed by othermeans, or an integrated color and infrared printer which prints theomnitags, text and graphics simultaneously. Digitally-printed text andgraphics may include everything on the label or packaging, or mayconsist only of the variable portions, with other portions still printedby other means. Thus the printer with an infrared and black printingcapability can displace an existing digital printer used for variabledata printing, such as a conventional thermal transfer or inkjetprinter.

The printer is typically controlled by a host computer, which suppliesthe printer with fixed and/or variable text and graphics as well as itemids for inclusion in the omnitags. The host may provide real-timecontrol over the printer, whereby it provides the printer with data inreal time as printing proceeds. As an optimisation, the host may providethe printer with fixed data before printing begins, and only providevariable data in real time. The printer may also be capable ofgenerating per-item variable data based on parameters provided by thehost. For example, the host may provide the printer with a base item IDprior to printing, and the printer may simply increment the base item IDto generate successive item ids. Alternatively, memory in the inkcartridge or other storage medium inserted into the printer may providea source of unique item ids, in which case the printer reports theassignment of items ids to the host computer for recording by the host.

Alternatively still, the printer may be capable of reading apre-existing item ID from the label onto which the omnitags are beingprinted, assuming the unique ID has been applied in some form to thelabel during a previous manufacturing step. For example, the item ID mayalready be present in the form of a visible 2D bar code, or encoded inan RFID tag. In the former case the printer can include an optical barcode scanner. In the latter case it can include an RFID reader.

The printer may also be capable of rendering the item ID in other forms.For example, it may be capable of printing the item ID in the form of a2D bar code, or of printing the product ID component of the item ID inthe form of a linear bar code, or of writing the item ID to a writableor write-once RFID tag.

The invention has been described herein with reference to the specificexamples only. Skilled workers in this field will readily recognize manyvariations and modifications, which do not depart from the spirit andscope of the broad inventive concept.

Furthermore, it will be appreciated by a person skilled in the art thatthe cartridge disclosed in the present application may be implemented orused in any printing device where the printing device uses a cartridge.For example, the printing device may be a desktop printer, a workgroupprinter, a network printer, a short-run digital printer, or a printerintegrated in a mobile device such as a personal digital assistant or amobile or cellular phone. Such devices and printers are the subject ofgranted US patents and co-pending US patent applications, details ofwhich are provided in the cross reference section of the presentspecification.

1. A printer system for printing pages belonging to an interactive pagesystem, the printer system comprising: a cartridge comprising a datastorage area in which is pre-stored a range of identifiers, eachidentifier being unique throughout the interactive page system; and aprinter comprising an interface for receiving the cartridge, a readerfor reading an identifier from the range of pre-stored identifiers, acoded data generator for generating a page identifier from theidentifier, and a printing mechanism for printing the page identifieronto a page, wherein the reader reads a previously unread identifierfrom the range of identifiers each time the coded data generator is togenerate a page identifier, and wherein the printing mechanismrepeatedly prints the page identifier over substantially an entirety ofthe page.
 2. A printer system according to claim 1, wherein the range ofidentifiers is defined by a base identifier and a count.
 3. A printersystem according to claim 2, wherein the reader reduces the count toensure a previously unread identifier is read.
 4. A printer systemaccording to claim 1, where in the cartridge further comprises one ormore ink reservoirs for storing a printing fluid.
 5. A printer systemaccording to claim 4, wherein each of the one or more ink reservoirscontain one of black ink, coloured ink, infrared ink, a fixative, and anadhesive.
 6. A printer system according to claim 4, wherein the range ofidentifiers is of a size sufficient to generate as many identifiers aspages printable using the printing fluid stored in the in the one ormore reservoirs.
 7. A cartridge according to claim 1, wherein the readeris an optical reader and the identifier data is disposed on thecartridge in an optically readable form.
 8. A cartridge according toclaim 1, wherein the reader is a magnetic reader and the identifier datais disposed in the cartridge in a magnetically readable form.
 9. Acartridge according to claim 8, further comprising a magnetic writer formagnetically writing and rewriting the count disposed in the cartridge.10. A printer system according to claim 1, wherein the reader compriseselectronic reading circuitry, and the identifier data is incorporated inan electronic readable memory associated with the cartridge.
 11. Aprinter system according to claim 10, wherein the memory is anon-volatile magnetic memory.
 12. A printer system according to claim10, wherein the memory is a solid-state memory.
 13. A printer systemaccording to claim 10, further comprising an electronic writer forelectronically writing and rewriting the count in the memory.
 14. Aprinter system according to claim 1, wherein the identifiers areencrypted using an encryption key.
 15. A printer system according toclaim 1, wherein the printing mechanism prints the page identifier at aplurality of locations on the page.
 16. A printer system according toclaim 2, wherein a plurality of cartridges are provided, and the rangeof identifiers stored in each cartridge begins from a different basecount.
 17. A printer system for printing a sub-set of pages belonging toa super-set of pages, the printer system comprising: a cartridgecomprising a data storage area in which is pre-stored a range ofidentifiers, each identifier being unique throughout the super-set ofpages; and a printer comprising an interface for receiving thecartridge, a reader for reading an identifier from the range ofpre-stored identifiers, a coded data generator for generating a pageidentifier from the identifier, and a printing mechanism for printingthe page identifier onto a page, wherein the reader reads a previouslyunread identifier from the range of identifiers each time the coded datagenerator is to generate a page identifier, and wherein the printingmechanism repeatedly prints the page identifier over substantially anentirety of the page.